The present invention relates generally to data processing and media, and error tolerance, detection and correcting, particularly to interference error tolerance and detecting/correcting coding, circuits, systems and methods, particularly for digital information and apparatus.
The contents, and hence the meaning of the information in binary circuits such as registers may be changed by interference from sources such as lightning, radio interference, radar, cosmic rays, sun spots, static, noise, dirty lines, defective components, explosions, security systems, vibrators, ignition systems, compressors, etc. Interference may be thought of as causing any unwanted change to information or any change to information not in response to an instruction to change, and includes so-called soft errors. For example, the effect of interference may be to seemingly randomly invert one or more stages (binary digits or bits) of registers. Interference can thus render the contents of such circuits used, for example, in computers useless. Eliminating such interference may be difficult or impossible.
Heretofore error techniques have in effect sought to resist interference and detect and correct errors resulting from interference. Common parity, for example, is a well known technique for detecting errors per se. However, parity can only detect some errors, such as one-bit errors, and parity does not itself correct errors. Moreover, error correcting coding requires more than one extra bit or digit per byte, such as twice as many digits, which dramatically reduces the information capacity that the circuit may otherwise have, and can function reliably only if the extent of interference falls within precisely defined parameters.
There is thus a need for improved techniques, circuits, media, coding and methods for coping with errors caused by interference.